/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package listas;

import java.util.ArrayList;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import pojos.CatAsuntos;
import pojos.CatInstancias;
import pojos.Oficios;
import pojos.Remitentes;
import pojos.Turnados;
import pojos.Usuarios;

/**
 *
 * @author VLCAHB88
 */
public class listaOficios implements java.io.Serializable{



    private int id;
     private CatAsuntos catAsuntos;
     private Usuarios usuarios;
     private CatInstancias catInstancias;
     private Date fechaCap;
     private Date fechaRec;
     private String oficio;
     private String descripcion;
     private String observaciones;
     private Boolean deleted;
     private Set remitenteses = new HashSet(0);
     private Set turnadoses = new HashSet(0);
     private String proridad;

     private String remitente;
     private String cargo;
     private Integer idRem;

    public listaOficios() {
    }

    public listaOficios(Oficios ofi) {
        this.setId(ofi.getId());
        this.setOficio(ofi.getOficio());
        this.catAsuntos = ofi.getCatAsuntos();
        this.usuarios = ofi.getUsuarios();
        this.catInstancias = ofi.getCatInstancias();
        this.fechaCap = ofi.getFechaCap();
        this.fechaRec = ofi.getFechaRec();
        this.descripcion = ofi.getDescripcion();
        this.observaciones = ofi.getObservaciones();
        this.deleted = ofi.getDeleted();
        this.proridad = ofi.getProridad();
        this.remitente = ofi.getRemitente();
        this.cargo = ofi.getCargo();
        this.idRem = ofi.getIdRem();
        this.turnadoses=ofi.getTurnadoses();
        this.remitenteses=ofi.getRemitenteses();
        getListaTurnados();
        getNumOficioTurnado();
    }




    public listaOficios(int id, CatAsuntos catAsuntos, Usuarios usuarios, CatInstancias catInstancias, Date fechaCap, Date fechaRec, String oficio, String descripcion, String observaciones, Boolean deleted, String proridad, String remitente, String cargo, Integer idRem) {
        this.id = id;
        this.catAsuntos = catAsuntos;
        this.usuarios = usuarios;
        this.catInstancias = catInstancias;
        this.fechaCap = fechaCap;
        this.fechaRec = fechaRec;
        this.oficio = oficio;
        this.descripcion = descripcion;
        this.observaciones = observaciones;
        this.deleted = deleted;
        this.proridad = proridad;
        this.remitente = remitente;
        this.cargo = cargo;
        this.idRem = idRem;
    }

    public listaOficios(int id, CatAsuntos catAsuntos) {
        this.id = id;
        this.catAsuntos = catAsuntos;
    }

      public String getCargo() {
        return cargo;
    }


    public void setCargo(String cargo) {
        this.cargo = cargo;
    }
    public String getRemitente() {
        return remitente;
    }
    public void setRemitente(String remitente) {
        this.remitente = remitente;
    }

    public int getId() {
        return this.id;
    }

     public List<Turnados> getTurnados() {
        //public void getOfendidos(){
        List <Turnados> catalogo=new ArrayList<Turnados>();

        for(Object objeto:this.turnadoses){

            Turnados o=(Turnados)objeto;
            if(!o.getDeleted())
                catalogo.add(o);
//            if(o.getDeleted()==false){
//                this.setCadenaOfendidos(this.getCadenaOfendidos()+o.getNombre()+" "+o.getPaterno()+" "+o.getMaterno()+", ");
//            }
        }
//        if(this.getCadenaOfendidos().length()>0)
//            this.setCadenaOfendidos(this.getCadenaOfendidos().substring(0, (this.getCadenaOfendidos().length()-2)));


        return catalogo;
    }
    public void getRem(){
        this.setRemitente("");

        for(Object objeto:this.remitenteses){
            Remitentes o=(Remitentes)objeto;
           // if(o.getDeleted()==false){
                this.setRemitente(o.getNombre());
           // }
        }
        //if(this.getCadenaOfendidos().length()>0)
          //  this.setCadenaOfendidos(this.getCadenaOfendidos().substring(0, (this.getCadenaOfendidos().length()-2)));
     //   return remitente;
    }
    public String getRem1() {
        this.setRemitente("");
        for(Object objeto:this.remitenteses){
            Remitentes o=(Remitentes)objeto;
                this.setRemitente(o.getNombre());
        }
        return this.getRemitente();
    }
    public String getCargo1() {
        this.setCargo("");
        for(Object objeto:this.remitenteses){
            Remitentes o=(Remitentes)objeto;
                this.setCargo(o.getCargo());
        }
        return this.getCargo();
    }
     public Integer getId1() {
        this.setCargo("");
        for(Object objeto:this.remitenteses){
            Remitentes o=(Remitentes)objeto;
                this.setIdRem(o.getId());
        }
        return this.getIdRem();
    }


    public void setId(int id) {
        this.id = id;
    }
    public CatAsuntos getCatAsuntos() {
        return this.catAsuntos;
    }

    public void setCatAsuntos(CatAsuntos catAsuntos) {
        this.catAsuntos = catAsuntos;
    }
    public Usuarios getUsuarios() {
        return this.usuarios;
    }

    public void setUsuarios(Usuarios usuarios) {
        this.usuarios = usuarios;
    }
    public CatInstancias getCatInstancias() {
        return this.catInstancias;
    }

    public void setCatInstancias(CatInstancias catInstancias) {
        this.catInstancias = catInstancias;
    }

    public Date getFechaCap() {
        return fechaCap;
    }

    public void setFechaCap(Date fechaCap) {
        this.fechaCap = fechaCap;
    }

    public Date getFechaRec() {
        return fechaRec;
    }

    public void setFechaRec(Date fechaRec) {
        this.fechaRec = fechaRec;
    }

    public String getOficio() {
        return this.oficio;
    }

    public void setOficio(String oficio) {
        this.oficio = oficio;
    }
    public String getDescripcion() {
        return this.descripcion;
    }

    public void setDescripcion(String descripcion) {
        this.descripcion = descripcion;
    }
    public String getObservaciones() {
        return this.observaciones;
    }

    public void setObservaciones(String observaciones) {
        this.observaciones = observaciones;
    }
    public Boolean getDeleted() {
        return this.deleted;
    }

    public void setDeleted(Boolean deleted) {
        this.deleted = deleted;
    }
    public Set getRemitenteses() {
        return this.remitenteses;
    }

    public void setRemitenteses(Set remitenteses) {
        this.remitenteses = remitenteses;
    }
    public Set getTurnadoses() {
        return this.turnadoses;
    }

    public void setTurnadoses(Set turnadoses) {
        this.turnadoses = turnadoses;
    }

    public String getProridad() {
        return proridad;
    }

    public void setProridad(String proridad) {
        this.proridad = proridad;
    }

    public Integer getIdRem() {
        return idRem;
    }

    public void setIdRem(Integer idRem) {
        this.idRem = idRem;
    }



    private String cadenaT;

    public String getCadenaT() {
        return cadenaT;
    }

    public void setCadenaT(String cadenaT) {
        this.cadenaT = cadenaT;
    }

    private void getListaTurnados() {
        this.setCadenaT("");
       if(turnadoses.isEmpty()){
        this.setCadenaT("qwerty");
       }
       else{

        for(Object objeto:turnadoses){
            Turnados i=(Turnados)objeto;
            if(i.getDeleted()==false){
                this.setCadenaT(this.getCadenaT()+i.getNombre()+" "+i.getPaterno()+" "+i.getMaterno()+", ");
            }
        }
        if(this.getCadenaT().length()>0)
            this.setCadenaT(this.getCadenaT().substring(0, (this.getCadenaT().length()-2)));
    }
    }

   private String numOfTurnado;

    public String getNumOfTurnado() {
        return numOfTurnado;
    }

    public void setNumOfTurnado(String numOfTurnado) {
        this.numOfTurnado = numOfTurnado;
    }


   private void getNumOficioTurnado(){
            this.setNumOfTurnado("");
            //Turnados tur= (Turnados) turnadoses;
            for(Object objeto:turnadoses){
            Turnados i=(Turnados)objeto;

               this.setNumOfTurnado(i.getOficio());
        }  
   }

}
